package org.example.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "permissions")
public class Permissions {

    /**
     * 子权限
     */
    @TableField(exist = false)
    private List<Permissions> children;
    /**
     * 编号主键
     */
    @TableId(value = "id", type = IdType.INPUT)
    private Integer id;

    /**
     * 英文名称
     */
    @TableField(value = "en_name")
    private String enName;

    /**
     * 中文名称
     */
    @TableField(value = "zh_name")
    private String zhName;

    /**
     * 路由地址
     */
    @TableField(value = "`path`")
    private String path;

    /**
     * 组件
     */
    @TableField(value = "component")
    private String component;

    /**
     * 请求地址
     */
    @TableField(value = "url")
    private String url;

    /**
     * 权限标识
     */
    @TableField(value = "perm")
    private String perm;

    /**
     * 类型：M为菜单，F为功能
     */
    @TableField(value = "`type`")
    private String type;

    /**
     * 父编号
     */
    @TableField(value = "parent_id")
    private Integer parentId;

    /**
     * 父名称
     */
    @TableField(value = "parent_name")
    private String parentName;

}